package com.wdb007.venus.svc.dal.book.dao;

import java.util.List;

import com.wdb007.venus.svc.dal.book.model.BookShelfDO;
import com.wdb007.venus.svc.dal.book.model.BookShelfDistanceDO;
import com.wdb007.venus.svc.dal.book.model.BookShelfPageDO;

public interface BookShelfDAO {
	
    int remove(String code);

    int insert(BookShelfDO record);

    BookShelfDO get(String code);

    int update(BookShelfDO record);
    
    List<BookShelfDO> list();
    
    List<BookShelfDO> listByLocation(BookShelfDO query);
    
    List<BookShelfDO> listByLocationGcj02(BookShelfDO query);
   
    List<BookShelfDO> listByLocationBd09(BookShelfDO query);
    
    BookShelfDO getNearestShelf(BookShelfDO query);
    
    List<BookShelfDistanceDO> listSortByDistance(BookShelfPageDO query);
    
    int countSortByDistance(BookShelfPageDO query);
    
    String getVersion(String code);
}